Power line network system and method

ABSTRACT

Various aspects of the instant disclosure are directed towards communicating symbols over a power line carrying alternating current, based upon frequency variations in the alternating current. In accordance with some embodiments, a line driver couples data-carrying symbols over the power line, via a waveform. Variations in the alternating current are monitored and used for defining data useful for providing steps of the waveform. The accessed data entries are used to drive a line driver for modulating alternating current on the power line to account for the variations.

BACKGROUND

Service providers utilize distributed networks to provide services tocustomers over large geographic areas. For example, power companies usepower distribution lines to carry power from one or morepower-generating stations to residential and commercial customer sitesalike. The generating stations use alternating current (AC) to transmitpower over long distances via the power distribution lines.Long-distance transmission can be accomplished using a relatively highvoltage. Substations located near the customer sites provide a step-downfrom the high voltage to a lower voltage (e.g., using transformers).Power distribution lines carry this lower-voltage AC from thesubstations to the endpoint devices customer sites.

Communications providers may utilize a distributed communicationsnetwork to provide communications services to customers. Similarly,power companies utilize a network of power lines, meters, and othernetwork elements to provide power to customers throughout a geographicregion and to receive data about the power usage. However, datacommunication between a central collector and many thousands of endpointdevices over power distribution lines can be a particularly challengingissue. The sheer number of endpoint devices contributes to a host ofissues including synchronization, communication bandwidth and costconcerns. Moreover, variations in alternating current carried on powerlines can make the communication of data along with the currentdifficult to achieve.

These and other issues present challenges to the design and operation ofpower-line communication apparatuses, systems and networks.

SUMMARY

The present disclosure is directed to systems and methods for use withcoordinated communications between devices and over power distributionlines. These and other aspects of the present disclosure are exemplifiedin a number of illustrated implementations and applications, some ofwhich are shown in the figures and characterized in the claims sectionthat follows.

Particular embodiments of the instant disclosure are directed towardscommunicating data-carrying symbols over a power line, such as by usinga waveform. Circuitry determines steps of a waveform (e.g., sine-based)based upon symbols to be carried on the power line. Based thereon, datais used to drive a line driver with a corresponding waveform, based uponvariations (e.g., based on the frequency or period of the current ACcycle) in alternating current carried by the power line. With thisapproach, the line driver is driven in a manner that is locked orclosely related to the variations in the alternating current,facilitating the receipt and processing of the data as received over thepower line.

More specific embodiments are directed to a circuit having a line driver(or signal driving circuit) coupled to drive signals on a power linecarrying an alternating current signal, a signal-monitoring circuitmonitors variations in the alternating current signal and a logiccircuit that accesses information for controlling the line driver whichin turn, couples a waveform used to carry data or data-carrying symbols(e.g., for passing decodable information) over a power line. The powerline carries an alternating current signal having a frequency or phasethat varies, relative to a frequency or phase of previous cycles of thealternating current signal. Data in a lookup table can be pre-calculatedand accessed for processing and/or modulating the alternating current ofthe power line with the data-carrying symbols, based upon the variationsin the alternating current signal.

In such specific embodiments, the pre-calculated data can be implementedfor the AC variations in different ways including, for example, assignal-level stepped data to reflect the amplitude along a particularpoint (in a series of time-spaced points) for defining a sine waveformbeing coupled to the power line for conveying the data or data-carryingsymbols. In certain example embodiments, the pre-calculated dataincludes information for signal-level steps and/or timing-based steps.One or both types of steps can be used for defining the waveform that isto be presented (or coupled) to the power line.

In yet another specific example embodiment, a lookup table as may beimplemented in a manner as discussed herein includes data identifying arate at which a selected waveform should be accessed for thepresentation of correct signal magnitudes to a power line. The table canalso be configured to indicate time offsets for accessing the table'srepresentations of the selected waveform. Thus, for a given category ofthe AC cycle (e.g., short versus long), the table-access timing (asopposed to rate) is predetermined for each category of waveforms andagain, the coupling is a time-based update of the waveform asrepresented by a various points designated for that particular AC cyclecategory.

Other embodiments are directed to methods for coupling data-carryingsymbols over a power line as discussed above and using combinations ofsuch pre-calculated data, as appropriate for the complexity of thesymbol, system data-throughput needs, computational power/efficiency forreal-time applications, memory availability, and the like.

In accordance with another embodiment, one or more of theabove-characterized methods is carried out by a programmed processor(e.g., microcontroller or other CPU-based circuit) using an interruptmechanism for timing the communication of data over AC power lines. Theprocessor is configured to generate the interrupts using a frequencysynthesizer having a period defined by a time between the interrupts,with the time between the interrupts being set based upon a fixed numberof interrupts to be generated during a cycle of the alternating current.The symbol values (e.g., the sum of two tones/frequencies and a phaseoffset between the two values) are provided. For each of the interrupts,values for each tone are accessed from a lookup table, based upon thetone values and the phase offset, and a transceiver is driven based uponthe combined accessed values from the lookup table. In alternativeschemes, a polling technique is used in place of, or in combination withthe interrupt scheme, for regular/timed accesses so as to maintainappropriate updates as used to present the correct waveform to the AC.

In accordance with yet another embodiment, methods and apparatuses aredirected to a specific circuit-based approach involving generation of acomplex waveform by sweeping through a sine-based data table whichstores pre-calculated values. The form of the table permits acomputationally-limited microcontroller to accommodate throughput (orspeed) as needed to communicate the complex waveform to a line driverfor presentation to the AC power line. Instead of burdening themicrocontroller with having to update and constantly calculate andprocess information for proper presentation to the AC line, much of therelevant information is pre-calculated and stored in such a table forreal-time access by the microcontroller. The sine table is read atdifferent rates from different starting points for each tone and thevalues are added. This approach is used to generate the desired complexwaveform very rapidly. Further, by measuring and predicting the timeperiod of the next AC cycle with very high precision (as needed for anygiven application), the process can control these different rates fromdifferent starting points for each tone for proper delivery of the datato the AC line. Such delivery involves use of the pre-calculated valuesfor the line driver. This can occur a set number of times for each ACcycle, e.g., by spacing these updates based on the prediction. Inspecific applications, the intervals can be set such that they aremostly identical, but some intervals are carefully selected to have ashorter or longer time to fit length of the AC waveform despite hardwarelimitations. Surprisingly, this approach for generating a complexwaveform (in which the sum of two tones are represented) has been usedto generate frequencies that are only 0.00001 Hz apart, while minimizingboth processing time and computational burdens of the logic circuitryincluding the microcontroller.

The above summary is not intended to describe each illustratedembodiment or every implementation of the present disclosure. Thefigures and detailed description that follow, including that describedin the appended claims, more particularly describe some of theseembodiments.

BRIEF DESCRIPTION OF FIGURES

Various example embodiments may be more completely understood inconsideration of the following detailed description in connection withthe accompanying drawings, in which:

FIG. 1 shows communications apparatuses and a system, as may beimplemented in connection with one or more embodiments of the presentdisclosure; and

FIG. 2 shows an apparatus and data flow diagram, consistent with otherembodiments of the present disclosure.

While the disclosure is amenable to various modifications andalternative forms, examples thereof have been shown by way of example inthe drawings and will be described in detail. It should be understood,however, that the intention is not to limit the disclosure to theparticular embodiments shown and/or described. On the contrary, theintention is to cover all modifications, equivalents, and alternativesfalling within the spirit and scope of the disclosure.

DETAILED DESCRIPTION

Aspects of the present invention are believed to be applicable to avariety of different types of devices, systems and arrangements thatcommunicate over power distribution lines. While the present disclosureis not necessarily limited to such applications, various aspects of thedisclosure may be appreciated through a discussion of various examplesusing this context. Moreover, aspects of the following discussionpertaining to methods may be implemented with apparatuses or systems.

Various example embodiments are directed to synchronizing a transmitterto the frequency of the alternating current carried on a power line, fortransmitting symbols via modulation of a signal on the power line inaccordance with variations in the alternating current. A lookup table(e.g., a data storage circuit storing lookup table information) isaccessed to retrieve carrier wave values therein, based upon thealternating current (e.g., monitored frequency of the alternatingcurrent) and phase-offset tone values corresponding to data to betransmitted. The retrieved values are used to drive a signal on thepower lines, with the driven signal being locked, or associated, withthe frequency of the alternating current to facilitate detectionthereof.

With this approach, information can be sent from remote locations on apower line that can be successfully decoded by a receiver, using a verysmall part of the available frequency range for each transmitter.Symbols can thus be transmitted as a complex waveform, as two summedtones at a set phase which represent a set of data bits, and imposed ona power line waveform such that the same number of waveforms (orfractions of a waveform) fit into each cycle of the power line signal.This approach can facilitate, for example, controlling the frequency tothe 0.00001 Hz level, with the generation of two or more mixed tonesthat are sent with a phase offset, at a frequency in relation to thefrequency changes of the power line. Both the transmitter and receivercan “lock” to the power line frequency as a reference to detect thenarrow frequencies generated by the transmitter.

In one particular embodiment, a line driver is configured to drive andcouple signals onto a power line that carries an alternating currentsignal, with a signal-monitoring circuit monitoring variations in thefrequency of the alternating current signal, and with a lookup tablethat stores data entries to define data useful for providing (e.g.,amplitude-level) steps of a waveform. The line driver couples a waveformused to carry data or data-carrying symbols (e.g., for passing decodableinformation) over a power line that carries an alternating currentsignal having a frequency or phase that varies, relative to a frequencyor phase of previous cycles of the alternating current signal. The logiccircuit accesses the lookup table in response to the signal-monitoringcircuit, and feeds the line driver with a complex waveform thatrepresents data-carrying symbols, based upon the variations in thefrequency of the alternating current signal.

The pre-calculated data can be implemented as signal-level stepped datato reflect the amplitude along a particular point (in a series oftime-spaced points) for defining the waveform being coupled to the powerline for conveying the data or data-carrying symbols. In one examplecontext, for a given pair of tones (or more than two tones), the symbolis conveyed as a complex waveform representing the summed tones (e.g.,21709.00333 Hz and 21709.03333 Hz) at a set offset phase (e.g., 180degrees). Other respective examples include setting two tones to thesame frequency, using (at least for a portion of a transmission) onetone. With reference to the exemplifying two-tone scheme, the particularpoints of the complex waveform represent the signal magnitudes (asaccessed from the table) for coupling onto the power line one point at atime, for example, with the same number of waveform-representing pointsfitting into each (varying) cycle of the power line's alternatingcurrent. The table can be accessed at a rate that facilitatespresentation of the correct signal magnitudes (perhaps skipping sometable entries for a relatively long AC cycle) so that the coupling is atime-based update of the waveform as represented by the same targetnumber (where the points are spread to fit the AC cycle).

In other example embodiments, the pre-calculated data includesinformation for signal-level steps and/or timing-based steps. One orboth types of steps can be used for defining the waveform that is to bepresented (or coupled) to the power line. As a variation to the aboveapproach, an example in this regard involves a more memory-intensiveembodiment and tracking AC cycle variations for use with one of aplurality of different target numbers of points through which to definethe waveform over an AC cycle (e.g., one number for relatively shortcycles and another for longer cycles). Using this approach, for anygiven symbol, if the current cycle of the AC is considered a longercycle, one or more additional waveform-representing steps can beretrieved from the table (or from another waveform-defining table usedfor such longer cycles).

In yet another related example embodiment, the table includes dataidentifying a rate at which a selected one of the waveforms should beaccessed for the presentation of the correct signal magnitudes to thepower line. For example, based on the category of the AC cycle (shortversus long relative to the expected average, or, alternatively,shorter, longer and about average), the table-access rate is firstselected and then the appropriate (pre-calculated) waveform for thatcategory of AC cycle is selected so that the coupling is a time-basedupdate of the waveform as represented by a target number of pointsdesignated for that particular AC cycle category. As an alternative, thetable can also be configured to indicate time offsets for accessing thetable's representations of the selected waveform. Thus, for a givencategory of the AC cycle (short versus long), the table-access timing(as opposed to rate) is predetermined for each category of waveforms andagain, the coupling is a time-based update of the waveform asrepresented by a various points designated for that particular AC cyclecategory. Moreover, different tables can be used to suit differentneeds, such as to provide different waveforms or to suit differentprocessing and/or storage needs as may be determined as a tradeoffbetween available resources. This tradeoff may further depend, forexample, upon a number of tones to be communicated, a desired accuracyof a signal, a modulation scheme for modulating alternating current, andother aspects that may affect computational and/or storage resources.

In another more particular embodiment, the lookup table entriesrepresent stored data for any of a variety of complex-waveformcommunication on the power lines. For instance, the lookup table maystore waveform-related parameters, such as steps corresponding to astepped sine wave and/or time-related steps to define spacing of theupdates used to implement the necessary waveform. As discussed,depending on the embodiment/application, the logic circuit may accessthe table in various ways to account for the variations in thealternating current signal. This approach may be implemented, forexample, by executing the logic circuit lookup the same (or a different)target number of times for each cycle and therein tie the accesses andsubsequent symbol communication to a frequency characteristic of thealternating current (e.g., whether 50,000, 100,000, 150,000 or over200,000 times per second (or interrupts, polling, or events per cycle).In other particular applications, this target number can be set to anyone or combination of target numbers. For less critical/accurateapplications, the waveforms need not be defined with exact spacing orsignal-level accuracy.

The resulting signal, such as a waveform, may thus be generatedresponsive to monitored variations in the frequency of the alternatingcurrent signal. Data in the table can be accessed and (optionallybuffered) according to time-based signal generation, such as in responseto zero-crossing or other event of the alternating current as useful forindicating the variation of the AC and when to drive the line driverwith a fixed step value.

In some implementations, the signal-monitoring circuit includes afrequency-locked monitoring circuit that monitors the frequency of thealternating current. The logic circuit accesses the stored data entriesa target number of times during each cycle of the alternating currentsignal, to feed the line driver with stepped data to drive a waveform onthe power line. This may involve, for example, accessing stored dataentries between 50,000 and 250,000 times during each second (or asanother example, between 500 and 5000 times per cycle) of thealternating current, in accordance with the monitored frequency. Theline driver may be driven with data retrieved from accesses to thelookup table using a common number of equally time-spaced accesses tothe lookup table for consecutive cycles of the alternating currentsignal that have respectively different periods. Accordingly, thetime-spacing between the accesses varies depending upon the monitoredfrequency, as may be detected for a current/previous cycle and used fortransmission on a subsequent cycle.

In some aspects, the line driver, lookup table and logic circuit arepart of a feedback control loop that couples data-carrying symbols via awaveform that is locked to variations in the frequency of thealternating current signal, for consecutive cycles of the alternatingcurrent that have respectively different periods.

A variety of types of data-carrying symbols can be communicated inaccordance with various embodiments. For instance, data-carrying symbolsthat include multi-data-bit symbols can be represented by a pair ofdiscrete-frequency signals and a phase offset between the pair offrequency signals. The multi-data-bit symbols can be synthesized intotwo sine-based waves that are summed to create a signal used by the linedriver for transmission over the power line.

Other embodiments are directed to methods for carrying out variousaspects as discussed above. These methods may employ circuits and/orother approaches as shown in and/or discussed in connection with thefigures. In a particular method-based embodiment carried out in aprocessing circuit, a plurality of table accesses occur using afrequency synthesizer having a period defined by a time between theaccesses, with the time therebetween being set based upon a fixed numberof waveform points or steps to be generated during a cycle ofalternating current (AC). For each of a plurality of symbols, two tonevalues and a phase offset between the two values are provided (e.g.,generated), based upon data in the symbols. The values are accessed foreach tone from a lookup table, based upon the tone values and the phaseoffset, and a transceiver is driven based upon the combined accessedvalues from the lookup table. These accesses may be effected, forexample, as interrupt accesses which, as discussed herein, may beimplemented as polling or events that may occur in a particular cycle.

In some implementations, an initial value is set in first and secondaccumulators respectively for the first and second tones, with adifference between the initial values being based upon the phase offset.First and second tweak values, respectively representing an amount addedto the first and second accumulators for each transmit interrupt, arecalculated using the tone values (in some embodiments, and/or a phaseoffset). The lookup table is accessed at each interrupt based upon thevalue in the accumulator for the respective tones. After the accumulatorvalues have been used for a current interrupt, the values in the firstand second accumulators are respectively increased using the first andsecond tweak values, for use at a next respective interrupt. Thisapproach facilitates sweeping of the lookup table at the respectivefrequencies of the first and second tones.

Another embodiment is directed to a circuit-based apparatus forcommunicating over power distribution lines carrying alternating current(AC) power. The apparatus includes a digital to analog converter (DAC),a frequency locked loop (FLL) circuit, a symbol generator circuit, adata storage circuit and a synthesizer circuit. The FLL circuitgenerates a target value defining a base period for each interrupt,based upon a frequency of the AC power, with the number of interruptsbeing generated for each cycle of the AC power being constant. Thesymbol generator circuit selects two frequencies and a phase based upona binary pattern being communicated over the power distribution linesfor each symbol. The selected frequencies (and in some embodiments,phase) are used to calculate counter tweak values, such as discussedabove, and a start value for the accumulator for a second tone iscalculated based upon a phase selected by the symbol generator circuit.The data storage circuit stores a waveform table having valuesrepresenting step values of a wave and having half a maximum voltage ofthe DAC. The synthesizer circuit is responsive to each interruptgenerated by the FLL circuit, by generating and providing an outputsignal to the DAC by indexing into the waveform table to retrieve twowave values (e.g., sine-based values) respectively based upon bits ineach of two accumulators. These values correspond to first and secondtones having a fixed phase relationship, and add the retrieved sinevalues to generate a complex waveform. In response to a new symbol, theaccumulator for the first tone is cleared and the accumulator for thesecond tone is set to the start value provided by the symbol generator,therein setting a sweep of the sine table at an offset that matches thephase difference of the new frequencies (tones) selected by the symbolgenerator circuit.

In accordance with one or more embodiments, a direct digital synthesizer(DDS) combines two tones and implements a phase relationship, whilekeeping a number of interrupts per a power line cycle constant tolengthen and shorten the time between DDS interrupts, for use inaccessing a sine table for driving a line driver and thereincommunicating symbols over the power line. This changes the rate thatthe sine table is swept for both tones, which adjusts the frequency sothat they are in a fixed relationship to the power line cycles. Areceiver on the same power line, when similarly locked to the power linecycles, can accurately determine the frequency of the tones and theirphase relationship, and therein allows each tone to be narrower whichallows more transmitters to be active in the same range of frequencies.

By pre-calculating the waveform table, tweak values can be calculatedonce per symbol (e.g., as opposed to using interrupt-based logic)thereby reducing the processing time of the DDS logic. The accumulatoras discussed above, and as implemented with the tweak values, results inan index into the table using a single add and read to generate onetone. Adding the two voltage values results in the tones being used tocreate a mixed or complex waveform/signal as represented by a waveformtemplate that is ½ a maximum digital-to-analog (D/A) register's range(for driving the signal on an AC line). By offsetting the second tone'saccumulator once at the beginning of a symbol, the phase relationship isestablished and needs no further calculation. This approach facilitatesmicroprocessor operation at a very high interrupt rate to createaccurate frequencies, and can be implemented using one table(interrupt/poll) access, one counter, one timer, and one D/A port. Forinstance, a multi-tone frequency shift keyed with relative phasetransmitter can be synchronized to the frequency of a power line (e.g.,50 Hz or 60 Hz power line), with the synchronization carried out in anaccurate manner so that a remote receiver that is also synchronized tothe power line can receive a signal (e.g., to an accuracy of about0.00001 Hz). For further information regarding implementation details ofsuch a transmitter, reference may be made to U.S. Patent Publication No.2010/0164615 entitled “System And Method For Relative Phase ShiftKeying,” and filed Dec. 31, 2008, which is fully incorporated herein byreference.

In some implementations, a line lock is achieved using a hardware signalthat detects the rising edge of the power line signal, captures thevalue of a high precision hardware counter, and generates an interrupt.This counter value is one input to a frequency locked loop (FLL) logiccircuit. A second signal for the FLL circuit comes from a direct digitalsynthesizer logic (DDS) circuit, which is generated when the DDSdetermines that it has processed enough interrupts for one cycle of thepower line. The DDS records the reading of the same high precisioncounter used for the capture of the power line zero crossing. When bothsignals are completed (the order of completion changes dynamically asthe frequency of the power line changes), the FLL logic circuit isactivated.

The FLL logic circuit uses the difference in time (counts) of the twoinput signals to drive a proportional-integral-differential (PID)engine. This PID engine filters the input signals and uses a variationof the standard PID logic to generate a target, in DDS timer counts, forthe next power line cycle to reduce the difference in the two signals.The variation of this PID logic is used to gate the integral part of thecalculation based on the magnitude of the proportional difference, withthe integral coefficient used as a divisor instead of a multiplier. Bothchanges reduce the effect of the integral correction to enable the PIDto use high precision input values (the bigger counter, the larger thenumber that can be “remembered” by the Integral part of the PID).

The target value generated by the FLL logic circuit is used as the baseperiod for each DDS interrupt timer during the power line cycle. The DDStimer is set every DDS interrupt to a value that will result in aconstant number of interrupts per power line cycle, with this targetvalue being a floating point value, while the timer register in thehardware is a fixed point value (no fraction). When the DDS logiccircuit converts the target value to a fixed value, it loses accuracyand an error accumulator is used to compensate.

In some implementations, the DDS compensates for the accuracy error byadding the FLL target to a floating point accumulator, using the fixedpoint value to the left of the decimal of this accumulator for the timerregister, and then subtracting this fixed value (converted to floatingpoint) from the accumulator. The accumulator accumulates the “unused”fraction parts, which will add up to result in an extra count at regularintervals. Evenly adding in extra counts during the cycle preventsgenerating unwanted frequencies while ensuring the time to the end ofthe cycle is accurate.

With this approach, the transmitter logic is executed the same number oftimes for each power line cycle. This locks the signal being sent forthe symbol to the line frequency. The rest of the transmitter logicgenerates the signal used to drive a digital to analog (D/A) converterthat drives a power line carrier (PLC) transmitter.

For each symbol being transmitted, the transmitter generates acombination of two tones with a fixed phase relationship of 0 to 359degrees. The symbol generator receives a signal from the DDS when ituses a symbol, which causes the next symbol to be generated. Based onthe binary pattern being sent, two frequencies and a phase are selectedand used to calculate two tweak values such as discussed above,representing an amount added to an accumulator every transmit interruptand causing the DDS to sweep a waveform table at the tone's frequency.The symbol generator then calculates the starting value for theaccumulator of the second tone based on the phase relationship of thesymbol.

To generate the D/A output signal, the DDS uses bits in each of twoaccumulators to index into the table at each timer interrupt. The tablevalues may represent, for example, the D/A bits for a sine wave of ½ themaximum voltage of the D/A. Each accumulator is used to get the wavevalue and these values are added together, which combines the two tonesof the symbol. The tweak value and the DDS interrupt rate cause thetable to be swept at the frequency of each tone, and adjusted to belocked to the power line frequency. As the DDS starts a new symbol, itclears the accumulator of the first tone and sets the accumulator of thesecond tone to the value provided by the symbol generator. This causesthe table sweep to start at an offset that matches the phase differenceof the tones.

Turning now to the Figures, FIG. 1 shows communications apparatuses andsystem 100, as may be implemented in connection with one or more exampleembodiments of the present disclosure for communication with endpointsfor configuration thereof. As discussed herein, the various approachesmay be implemented in connection with a variety of different power linecommunication network environments, using one or more power lines and asmay involve one or more transformers and distribution stations.Accordingly, FIG. 1 shows one such implementation.

A power plant 110 distributes power to a plurality of distributionstations (e.g., substations) including stations 120 and 122. Eachrespective distribution station has a CPU-based data collector circuit(“collector”) 121 and 123. The distribution station 120 is coupled todistribute power to transformers 130, 132, 134 and 136. Distributionstation 122 is coupled to distribute power to transformer 138. Otherconfigurations may also be implemented, such as with distributionstation 122 being coupled to also supply power to one or more of thetransformers 130, 132, 134 and 136.

Each of the respective transformers is coupled to one or more endpoints,which are respectively coupled to receive utility-based data such aspower meter data, readings of water utilities, readings of gasutilities, status conditions or diagnostic data. By way of example,endpoints 140 and 141 are coupled to transformer 130, endpoints 142 and143 are coupled to transformer 132, endpoints 144 and 145 are coupled totransformer 134, endpoints 146 and 147 are coupled to transformer 136,and endpoints 148 and 149 are coupled to transformer 138. However, amultitude of such endpoints may be coupled to each transformer, to servethousands of users at each endpoint.

In some implementations, a command center 150 (such as a CPU-based dataprocessing system) controls one or more aspects of communications witheach collector (121, 123), by communicating with the collector over acommunications network that may differ from a power line communicationsnetwork. The collectors are typically CPU-based devices that can beimplemented in various forms as would be appreciated by the discussionherein. Accordingly, the command center 150 may control thecommunication of data to endpoints via the collectors, or couple datareceived at the collectors, such as by accessing utility-based data fordevices at the respective endpoints.

Each of the respective endpoints 140-149 communicates with one or morecollectors 121 and 123 over the power distribution lines 170 as shown,as the lines carry AC power. Accordingly, the respective endpoints sharebandwidth over the power distribution lines, as may be relevant toconcurrent communications and/or time-based communications involvingdifferent time periods during which each respective endpoint (or groupsof endpoints) communicate. This approach may be carried out tofacilitate effective communications with an acceptable or desirableamount of errors, in managing available bandwidth.

One or more of the endpoints include a lookup table-based encodingcircuit 160, which couples data to the power lines and, therein, to thecollectors 121 and 123. The endpoint or endpoints using the lookuptable-based encoding circuit 160 operate to generate and send data usinga fixed number of accesses/operations for each cycle of alternatingcurrent passed on the power lines. In this context, data is synchronizedto the alternating current as discussed herein.

FIG. 2 shows an apparatus 200 and data flow diagram, as one of manydifferent ways that is consistent with other embodiments of the presentdisclosure. The apparatus includes a frequency locked loop circuit 210,a symbol generator circuit 220 and a direct digital synthesizer logiccircuit 230, which accesses and uses a lookup table 232 to provide anoutput to a digital-to-analog (D/A) register 240 for driving adigital-to-analog converter (DAC).

In response to a crossover interrupt (e.g., a zero crossing ofalternating current), the FLL 210 sends data identifying a target periodto the DDS 230, which uses the target period in accessing the lookuptable 232. The symbol generator 220 generates data including a symbol,tweak values (as further discussed herein), phase between tones and astarting accumulator value for a second tone (therein setting an offsetbetween tones). This information is generated once per symbol, and canbe carried out in response to data indicating that a previous symbol hasbeen used as presented by the DDS 230.

At each interrupt, the DDS 230 accesses the lookup table 232, based uponvalues in an accumulator for each of the tones. Accumulators for eachtone are augmented for each interrupt by the tweak values. The DDS 230stores the accessed data in the D/A register, which is used to drive aDAC.

The following embodiments characterize one or more aspects that may becarried out in accordance with FIG. 2. In this context, the followingdiscussion makes reference to FIG. 2 for illustration. The values in thelookup table 232 (sine to voltage table) are pre-calculated once, andinclude a set of numbers that when sent in order to the D/A register 240will cause the output to be a stepped (not perfect) sine wave. If everyother value in the table is sent in order, the output will still be asine wave but it will have even larger steps between voltage changes.External circuitry filters this output into a smooth waveform.

The FLL circuit 210 locks onto a primary signal and predicts the time(period) of the next primary signal's cycle (e.g., for a 50/60 Hz powerline). The FLL circuit 210 adjusts its prediction every primary cycle.The DDS circuit 230 uses this prediction to generate a large, fixednumber of interrupts such that they all fit in the predicted time of thenext primary signal's cycle. This interrupt is the signal that drivesthe synthesis of the waveform to the D/A Register 240, and is the DDScircuit 230's clock. The time between interrupts is not a fixed value.Because of the granularity of the timer used to generate the interrupts,each interrupt time may be adjusted a small amount to fit all theinterrupts into the primary signal's cycle with no time left over. EachDDS interrupt process, besides generating the D/A Register value, alsokeeps a sum of fractional timer bits that could not be inserted becauseof the timer's granularity. When these fractional bits add up to a bitor more, then an extra bit is inserted for the next interrupt cycle andsubtracted from the fractional bit total. This process doesn't induceany unwanted waveform into the output signal, but still fits all theinterrupts precisely into the variable length primary signal's cycletime.

To generate the desired waveform, the symbol generator circuit 220calculates three values, and the DDS circuit 230 informs the symbolgenerator whenever it uses a set of these values. Accordingly, thesymbol generator 220 generates a new set while the current symbol isbeing sent. In this embodiment, a symbol is implemented as thecombination of two tones and the phase relationship between them (e.g.,a 180 degree phase difference). Various implementations are directed tothe use of one or more of a variety of numbers of tones, to the limit ofhow much time it takes to calculate the D/A register 240 value during aDDS interrupt.

The first two values that the symbol generator circuit 220 calculatesfor the DDS circuit 230 are increments to the two DDS transmitaccumulators. The value is based on the size of the accumulator registerand the frequency of the tone and the fixed number of interrupts persecond (not primary cycle). The increment sets the rate at which thelookup table 232 is “swept”. For instance, if the increment is set suchthat every value in the sine table was read and sent to the D/A register240 every primary cycle of sixty cycles per second, then the frequencygenerated would be at 60 Hz. If the increment is twice that value, thefrequency would be 120 Hz because the table would be completed twice inone primary cycle. If the increment were such that only 1/60^(th) of thetable is used during a primary cycle, then the output frequency would be1 Hz. The increment value is the desired frequency times a constant,which is the accumulator size divided by the number of interrupts perprimary cycle.

The third value the symbol generator circuit 220 sets is the phase. Itdoes this by supplying the value to start the accumulator for the secondtone. This start value offsets the location in the sine table for thesecond tone. Since it starts at a different location in the sine table,this sets a phase difference between the tones. To generate two tonesthat are 180 degrees out of phase, the symbol generator circuit sets thestart value for the second accumulator to 180/360 times the size of theaccumulator.

At the end of a symbol, the DDS circuit 230 sets its accumulator fortone 1 to zero, sets its accumulator for tone 2 to the value supplied bythe symbol generator circuit 220. At every interrupt during the symbol,the DDS circuit 230 adds the increments to the accumulators, uses theaccumulator values to read two values from the sine table, adds them,and sends them to the D/A register 240. Every primary signal cycle, theFLL circuit 210 adjusts the time between DDS interrupt to keep the tonesgenerated in sync.

In a particular embodiment, the DDS circuit uses accumulators that holda maximum of 1199 (size is 1200), the number of interrupts the DDS usesis 1200 per second or 20 per primary signal cycle at 60 Hz, and thelookup table 232 includes 1200 entries. If tone 1 is 1 Hz, then theincrement value is set by the symbol generator circuit to 1*1200/1200or 1. If tone 2 is 2 Hz, the symbol generator circuit 220 sets theincrement value for tone 2 to a 2. If the phase difference is 180degrees, then the pre-set value for tone 2's accumulator is 600 (180/360times the size of the accumulator).

With the number of interrupts per second set to 1200, the number ofinterrupts per primary signal cycle is 1200/60 or 20. For each primarysignal cycle, the DDS circuit 230 uses the value in accumulator 1 (whichstarts at 0 at the beginning of a symbol) to index into the lookup table232 to read a value and add increment 1 (which is a one) to accumulator1. The DDS circuit 230 does the same for accumulator 2, but since itstarted at 600 the value it gets is in the middle of the sine wave andthe increment is two so accumulator 2 is set to 602. These two lookuptable values are added and sent to the D/A register 240. At the end ofthe first primary signal's cycle, accumulator 1 will be 20 andaccumulator 2 will be 640. When 30 primary cycles have passed,accumulator 1 will be 600 and the accumulator will wrap around and alsobe at 600, as the increment for signal two is driving the accumulatorthrough the lookup table 232 twice as fast as signal one. At the end of60 primary signal cycles, accumulator 1 will be back to 0 andaccumulator 2 will be back to 600. The values that were read for signal1 will be every value in the lookup table 232 from the first to the lastin order. For signal two, every other value is used twice. The waveformfor signal one is at 1 Hz, and the waveform for signal two is 2 Hz.These signals are combined by an adder and phase shifted by the non-zeroinitial value of accumulator 2.

Consistent with various embodiments of the present disclosure, the powerdistribution lines can carry power that is provided from one or morepower-generating stations to residential and commercial customer sitesalike. The generating station uses AC to transmit the power longdistances over the power distribution lines. Long-distance transmissioncan be accomplished using a relatively high-voltage. Substations locatednear the customer sites provide a step-down from the high-voltage to alower-voltage (e.g., using transformers). Power distribution lines carrythis lower-voltage AC from the substations to the customer sites.Depending upon the distribution network, the exact voltages and ACfrequencies can vary. For instance, voltages can generally be in therange 100-240 V (expressed as root-mean-square voltage) with twocommonly used frequencies being 50 Hz and 60 Hz. In the United States,for example, a distribution network can provide customer sites with 120V and/or 240 V, at 60 Hz.

The signals and associated logic and functionality described inconnection with the figures can be implemented in a number of differentmanners. Unless otherwise indicated, various general purpose circuitsystems and/or logic circuitry may be used with programs in accordancewith the teachings herein, or it may prove convenient to construct amore specialized apparatus to perform the required method. For example,according to the present disclosure, one or more of the methods can beimplemented in hard-wired circuitry by programming a general-purposeprocessor, other fully or semi-programmable logic circuitry, and/or by acombination of such hardware and a general-purpose processor configuredwith software.

It is recognized that aspects of the disclosure can be practiced withcomputer-based/processor-based system configurations other than thoseexpressly described herein. The required structure for a variety ofthese systems and circuits would be apparent from the intendedapplication and the above description.

The various terms and techniques are used by those knowledgeable in theart to describe communications, protocols, applications,implementations, mechanisms, etc. One such technique is the descriptionof an implementation of a technique expressed in terms of an algorithmor mathematical expression. That is, while the technique may be, forexample, implemented as executing code on a computer, the expression ofthat technique may be more aptly and succinctly conveyed andcommunicated as a formula, algorithm, or mathematical expression.

Thus, it is recognized that a block denoting “C=A+B” as an additivefunction whose implementation in hardware and/or software (e.g., asrepresented by functionally-enable hardware/software modules) would taketwo inputs (A and B) and produce a summation output (C), such as incombinatorial logic circuitry. Thus, the use of formula, algorithm, ormathematical expression as descriptions is to be understood as having aphysical embodiment in at least hardware (such as a processor in whichthe techniques of the present disclosure may be practiced as well asimplemented as an embodiment).

In certain embodiments, machine-executable instructions can be storedfor execution in a manner consistent with one or more of the methods ofthe present disclosure. The instructions can be used to cause ageneral-purpose or special-purpose processor that is programmed with theinstructions to perform the steps of the methods. Alternatively, thesteps might be performed by specific hardware components that containhardwired logic for performing the steps, or by any combination ofprogrammed computer components and custom hardware components.

In some embodiments, aspects of the present disclosure may be providedas a computer program product, which may include a machine orcomputer-readable medium having stored thereon instructions which may beused to program a computer (or other electronic devices) to perform aprocess according to the present disclosure. Accordingly, thecomputer-readable medium includes any type of media/machine-readablemedium suitable for storing electronic instructions.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the disclosure.Based on the above discussion and illustrations, those skilled in theart will readily recognize that various modifications and changes may bemade to the present disclosure without strictly following the exemplaryembodiments and applications illustrated and described herein. Forinstance, such changes may include variations on mechanisms forsynchronization with (and/or tracking of) the AC line frequency and/orthe use of communication protocols that are not expressly mentioned.Other approaches may involve accessing a lookup table based upon tonesgenerated in other manners, and/or storing additional information in alookup table. Still other approaches may involve using one or more ofvarious waveform types, such as sine-based waveform. Such modificationsand changes do not depart from the true spirit and scope of the presentdisclosure, which is set forth in the following claims.

What is claimed is:
 1. A circuit for use in a power-line communicationsystem in which power distribution lines are used by a power plant todistribute power and communication information, using alternatingcurrent signals between power distribution stations and endpointdevices, the circuit comprising: a signal driving circuit configured andarranged to couple data-carrying symbols over the power distributionlines, via a waveform, that carries an alternating current signal havinga frequency and/or phase that varies, relative to a frequency and/orphase of previous cycles of the alternating current signal, thedata-carrying symbols corresponding to respective information signals; asignal-monitoring circuit configured and arranged for monitoringvariations in the alternating current signal; an encoding circuitconfigured and arranged to provide encoded parameters that define, atleast in part, data for accounting for the variations; and circuitryconfigured and arranged to respond to the encoding circuit by providinginformation to the signal driving circuit, based on the data foraccounting for the variations, that causes the signal driving circuit tomodulate the alternating current signal of the power distribution linewith the data-carrying symbols, wherein the encoding circuit and thecircuitry are configured and arranged to adjust, in response to thesignal-monitoring circuit, the modulation of the alternating currentsignal to account for the variations.
 2. The circuit of claim 1, whereinthe circuitry is configured and arranged to synthesize multi-data-bitsymbols into a plurality of sine waves and to combine the sine waves tocreate a signal used by the signal-monitoring circuit for transmittinginformation over the power distribution lines.
 3. The circuit of claim1, wherein the data-carrying symbols include multi-data-bit symbolsrepresented by a pair of discrete-frequency signals and a phase offsetbetween the pair of discrete-frequency signals, and the circuitrysynthesizes the multi-data-bit symbols into sine-based waves that aresummed to create a signal used by the signal driving circuit fortransmission over the power distribution line.
 4. The circuit of claim1, wherein the circuitry accesses data stored in a memory circuit aplurality of times wherein times between the accesses are set based upona fixed number of waveform points or steps to be generated during acycle of the alternating current signal.
 5. The circuit of claim 1,further including a frequency locked loop circuit, wherein the frequencylocked loop circuit and the circuitry are configured and arranged withthe frequency locked loop circuit to cause the circuitry to retrievedata from a memory circuit and to use the retrieved data to generate awaveform that is based on one or more specific frequencies and a certainphase relationship, wherein the generated waveform is used to adjust themodulation of the alternating current signal.
 6. The circuit of claim 1,further including a frequency locked loop circuit, wherein the frequencylocked loop circuit and the circuitry are configured and arranged withthe frequency locked loop circuit causing an event signal to begenerated for notifying the circuitry which causes the circuitry toretrieve sine-based wave values and to use the retrieved sine-based wavevalues for adjusting the modulation of the alternating current signal.7. The circuit of claim 1, further including a frequency locked loopcircuit, wherein the frequency locked loop circuit and the circuitry areconfigured and arranged with the frequency locked loop circuit causingan event signal to be generated for notifying the circuitry which causesthe circuitry to retrieve data from a memory circuit and to use theretrieved data to generate a complex waveform that is used to adjust themodulation of the alternating current signal.
 8. The circuit of claim 1,wherein the circuitry is configured and arranged to retrieve, inresponse to an interrupt signal, sine-based wave values and to use theretrieved sine-based wave values to adjust the modulation of thealternating current signal.
 9. The circuit of claim 1, wherein thecircuitry is configured and arranged to retrieve, in response to timingestablished by a polling technique, sine-based wave values and to usethe retrieved sine-based wave values to adjust the modulation of thealternating current signal.
 10. The circuit of claim 1, wherein thecircuitry and the signal-monitoring circuit are configured and arrangedas part of a digital synthesizer.
 11. The circuit of claim 1, whereinthe circuitry is further configured and arranged to generate one of aplurality of waveforms, responsive to monitored variations in thealternating current signal.
 12. The circuit of claim 1, wherein thecircuitry is configured and arranged to use stepped data to providesignals to the signal driving circuit.
 13. The circuit of claim 1,wherein the circuitry is configured and arranged to use stepped data toprovide signals to the signal driving circuit, and wherein the signaldriving circuit uses the provided signals for modulating the alternatingcurrent signal of the power distribution line with a complex waveform.14. A circuit for use in a power-line communication system in whichpower distribution lines are used by a power plant to distribute powerand communication information, using alternating current signals betweenpower distribution stations and endpoint devices, the circuitcomprising: a signal driving circuit configured and arranged to coupledata-carrying symbols over the power distribution lines, via a waveform,that carries an alternating current signal having a frequency and/orphase that varies, relative to a frequency and/or phase of previouscycles of the alternating current signal, the data-carrying symbolscorresponding to respective information signals; a signal-monitoringcircuit configured and arranged for monitoring variations in thealternating current signal; an encoding circuit configured and arrangedto provide encoded parameters that define, at least in part, data foraccounting for the variations; and circuitry configured and arranged torespond to the encoding circuit by providing information to the signaldriving circuit based on stored pre-calculated values that are accessedby the circuitry based on the data for accounting for the variations,wherein the stored pre-calculated values are used by the circuitry tocause the signal driving circuit to modulate the alternating currentsignal of the power distribution line with the data-carrying symbols.15. The circuit of claim 14, wherein the encoding circuit and thecircuitry are configured and arranged to generate a complex waveform inresponse to accessing the pre-calculated values.
 16. The circuit ofclaim 14, wherein the encoding circuit and the circuitry are configuredand arranged to generate a complex waveform in response to accessing thepre-calculated values by measuring and predicting time periods of nextalternating current cycles.
 17. The circuit of claim 14, wherein thedata-carrying symbols are multi-data-bit symbols arranged to betransmitted by conveying a pair of discrete-frequency signals and aphase offset for each pair of discrete-frequency signals.
 18. Thecircuit of claim 1, wherein the circuitry is configured to determine theinformation by accessing pre-calculated values stored in a table. 19.The circuit of claim 18, wherein the circuitry is configured andarranged to select a table access rate based on duration of a cycle ofthe alternating current signal relative to an expected average; andaccess the table at the selected table access rate to determine theinformation.
 20. The circuit of claim 19, wherein the table includes afirst set of data and a second set of data; and the circuitry isconfigured and arranged to determine the information from the first setof data in response to the cycle of the alternating current signal beinglonger than the expected average; and determine the information from thefirst set of data in response to the cycle of the alternating currentsignal being longer than the expected average.